import { IPSDERBase } from './ipsderbase';
import { IPSDERIndexDEFieldMap } from './ipsderindex-defield-map';

/**
 *
 * 继承父接口类型值[DERINDEX]
 * @export
 * @interface IPSDERIndex
 */
export interface IPSDERIndex extends IPSDERBase {
  /**
   * 关系属性映射集合
   *
   * @type {IPSDERIndexDEFieldMap[]}
   */
  getPSDERIndexDEFieldMaps(): IPSDERIndexDEFieldMap[] | null;

  /**
   * 关系属性映射集合
   *
   * @type {IPSDERIndexDEFieldMap[]}
   */
  get psDERIndexDEFieldMaps(): IPSDERIndexDEFieldMap[] | null;

  findPSDERIndexDEFieldMap(objKey: any): IPSDERIndexDEFieldMap | null;

  /**
   * 索引类型识别值
   * @type {string}
   */
  typeValue: string;

  /**
   * 继承模式
   * @type {boolean}
   * @default false
   */
  inherit: boolean;

  /**
   * 虚拟模式
   * @type {boolean}
   * @default false
   */
  virtual: boolean;
}
